Online game advertising system

ABSTRACT

In one embodiment an online game advertising system provides an architecture for enabling the definition, sales, distribution, and management of interactive advertisements, sponsorships, and placements that appear within an online video game as part of the game experience or during idle load, wait, and pause screens. For example, in a race car game, when a driver pulls in for a pit stop, the engine oil brand that the game player may choose may be defined as locations for advertisements or product placements for real life engine oils and game publishers and advertisers may manage what specific advertisements to place in these locations.

BACKGROUND OF THE INVENTION

1. Field of Invention

The present invention relates to an online game advertising system,which in one embodiment serves as an architecture for enabling thedefinition, sales, distribution, and management of interactiveadvertisements, sponsorships, and placements that appear within anonline video game as part of the game experience or during idle load,wait, and pause screens.

2. Discussion of Background

The primary business model of traditional offline video games is thatgame publishers generate revenues through the unit sales of games on thewholesale market. With the advent of pervasive Internet and broadbandconnectivity, video game publishers are adding online capabilities totheir games in order to attract more game players and to explore newrevenue models.

Existing online games allow players to play against other live players.Some of these games display banner advertisements that border the mainviewable area of the screen in which the game is played. Game playersoften find these advertisements intrusive and annoying as they distractfrom the main focus of playing the game.

Video game play is an immersing experience in which game playersinteract with the characters, scenery, and challenges of the game itselfand with other live persons who are also playing the game. Liketelevision and movies, playing video games is a highly engagingexperience that often requires the attention of its participants.

SUMMARY OF THE INVENTION

The present inventor has realized that advertising that occurs within avideo game is less annoying to users if it occurs transparently withoutdistracting the attention of the game player from the game itself. Thistransparency can be achieved by placing advertisements within an onlinevideo game as part of the game experience or during idle load, wait, andpause screens.

The present inventor has also realized the need to provide dynamicupdates and real time management of various parts of programs in generaland gaming systems in particular. In one embodiment, the presentinvention provides a game, comprising, a game playing program wherein atleast one part of the game playing program is configured to be populatedwith an add-on component. The invention may also be practiced as asystem, comprising, a game playing program wherein at least one part ofthe game playing program is configured to be populated with an add-oncomponent, a remote server configured to store and serve at least oneadd-on component compatible with the game playing program, and aninterface coupled to the game playing program, the interface configuredto interact with the remote server and facilitate importation of anadd-on component from the remote server into said at least one part ofthe game playing program.

In another embodiment, the invention is a server configured to manage anarea within a program hosted on a user computer, wherein the server isremotely located from the user computer.

The invention may also be practiced as one or more methods, for example,a method of on-line advertising, comprising the steps of, registering auser of a gaming system, uploading an advertisement to a game program ofthe registered user, wherein the game program is configured to acceptand install the advertisement as an add-on game component, and managingactivities of the user during interactions of the user with the uploadedadd-on component. As another example, the invention is a method ofproducing advertisements for games, comprising the steps of, preparingan executable program component capable of being imported into a gameprogram and configured to interact with a game being played by a user ofthe game program.

In yet other embodiments, the invention is a component comprising, asoftware module configured to be imported into a commercially availablegaming program, wherein said software module is configured to implementan additional feature of the gaming program, the additional featurecomprising at least one of an advertisement sponsorship, placement,coupon, gift certificate, announcement, text, graphics, video, andobjects used by the game program.

These and other embodiments and features of the invention may beconveniently implemented in programming on a general purpose computer,or networked computers, and the results may be displayed on an outputdevice connected to any of the general purpose, networked computers, ortransmitted to a remote device for output or display. In addition, anycomponents of the present invention represented in a computer program,data sequences, and/or control signals may be embodied as an electronicsignal broadcast (or transmitted) at any frequency in any mediumincluding, but not limited to, wireless broadcasts, and transmissionsover copper wire(s), fiber optic cable(s), and co-ax cable(s), etc.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the invention and many of the attendantadvantages thereof will be readily obtained as the same becomes betterunderstood by reference to the following detailed description whenconsidered in connection with the accompanying drawings, wherein:

FIG. 1 is a block diagram of a gaming system according to an embodimentof the present invention;

FIG. 2 is a screenshot of a program play space output according to anembodiment of the present invention;

FIG. 3 is a flowchart example of how game locations are defined andregistered according to an embodiment of the present invention;

FIG. 4 is a flowchart example of how advertisement assets, campaigns,and display rules are defined according to an embodiment of the presentinvention;

FIG. 5 is a flowchart example of how advertisements are viewed by a gameplayer within a game according to an embodiment of the presentinvention;

FIG. 6 is a block diagram example of the online advertising systemaccording to an embodiment of the present invention;

FIG. 7 is a printout example of XML code of a campaign advertisementlisting according to an embodiment of the present invention;

FIG. 8 is a schematic example of an ad campaign data structure accordingto an embodiment of the present invention;

FIG. 9 is a screenshot example of using the Game Manager ManagementConsole to register game locations according to an embodiment of thepresent invention;

FIG. 10 is a screenshot example of how a game player is defined usingthe Game Manager Management Console according to an embodiment of thepresent invention;

FIG. 11 is a screenshot example of how an advertisement is defined usingthe Advertising Manager Management Console according to an embodiment ofthe present invention;

FIG. 12 is a screenshot example of how an advertisement campaign isdefined using the Advertising Manager Management Console according to anembodiment of the present invention;

FIG. 13 is a screenshot example of how display rules for anadvertisement campaign are defined using the Advertising ManagerManagement Console according to an embodiment of the present invention;

FIG. 14 is a screenshot example of how an advertisement from a loadscreen within a game is viewed according to an embodiment of the presentinvention;

FIG. 15 is a screenshot example of how an advertisement from a pausescreen within a game is viewed according to an embodiment of the presentinvention;

FIG. 16 is a screenshot example of how a game player may request to besent additional information regarding the ad through email according toan embodiment of the present invention;

FIG. 17 is a screenshot example of how an advertisement placement withina game is viewed according to an embodiment of the present invention;

FIG. 18 is a screenshot example of how a game player is prompted with alogin screen when attempting to view a secured or personal area such asrequesting product information or gift certificates that are mailed tothe game player's home address;

FIG. 19 is a screenshot example of how a game player may define a useraccount for him/herself through the use of the game according to oneembodiment of the present invention; and

FIG. 20 is a screenshot example of how a game player may define a creditcard that is tied to one's user account for purchases made within thegame according to one embodiment of the present invention.

FIG. 21 is a relational database schema for metadata storage accordingto an embodiment of the present invention;

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawings, wherein like reference numerals designateidentical or corresponding parts, and more particularly to FIG. 1thereof, there is illustrated a drawing of a gaming system according toan embodiment of the present invention. A remote server stores an add-oncomponent 115A that is configured to be uploaded and installed in aprogram 185 on a user computer 180. The program 185 includes anApplication Programming Interface (API) 190 that allows the program 185to communicate with the remote server 110 through a standard network orInternet connection hosted on the user computer 180. The add-oncomponent 115A (initially stored in database 130 or other storagedevice) is, for example, served to the user computer 180 by the remoteserver 110 via an Internet connection, and installed in the program 185via the API. As shown in FIG. 1, add-on component 115A has been servedto user computer 180, installed by API 190, and is shown residing withinprogram 185 as add-on component 115B.

The add-on component is, for example, an executable program component,interpretable source code, or other software module, that, whenexecuting within the program 185, implements a feature or otherwise addsvalue to the program 185. The program 185 may be any type of computerprogram, including any of games, business programs, entertainmentprograms, etc.

A publisher of program 185 releases program 185 with facilities or otherhooks (e.g., programming techniques, API, interface, etc.) in theprogram 185 that are needed to accept additional new components (e.g.,game pieces, area updates, etc.). The API 190 accepts incoming newcomponents from an Internet or other connection and provides theincoming component to the program in a manner needed by the program toaccept additional programming. For example, the API saves a newcomponent in an appropriate directory that is accessible to the program,or invokes a specific routine provided by the program to install thecomponent.

We now turn to a specific example in which the program 185 is a gameplaying program of the type in which users select characters or othericons and then control movement of the selected character or icon viajoystick or other input devices attached to the user computer 180. Anexample output play space 200 of an example game playing program asshown in FIG. 2. The game includes characters 205 and 210 that representusers of the game. In one embodiment, the game is an on-line game, and,for example, character 210 represents a remote on-line user andcharacter 205 represents a local user of user computer 180.

In this example, the add-on component is configured to provide abillboard, and the add-on component includes all the data andprogramming to place “Freeway Billboard” 220 in the game as a managedarea. The program 185 has been programmed to have facilities to allowupdates to a portion of the game playing space, and upon installation ofthe add-on component 115B, the “Freeway Billboard” appears in the gameplaying space. As illustrated in this example, a part of the program 185is updated with add-on component 115B (e.g., updates programming of thegame), and the programs output, or play space, is also updated with anadditional feature (e.g., “Freeway Billboard” 220) provided by theadd-on component.

In one embodiment, “Freeway Billboard” 220 is a virtual advertisementdisplay that cycles through various video and animated advertisements(FIG. 2, Advertisement 225). The advertisements may be selected by localand/or remote users based on interaction of their respective characterswith the virtual billboard. When selecting the billboard, theinteracting user may further have the option to enter his/her own emailor home address to request additional information regarding the productbeing advertised. Moreover, the user may have the option to immediatelypurchase the product being advertised. Payment is made, for example, viareal cash or credit monetary transactions or via points, health, orother value accumulated through play of the game. The characters mayselect the virtual billboard by pointing or looking at the billboard orother means of selection provided by the add-on component and usevarious ways to select advertisements from the virtual billboard. In oneembodiment, once selecting the virtual billboard, a virtual“advertainment” experience is provided, where the game player'scharacter enter a special game level, room, or area and may interactdirectly with animated characters, objects, and videos that representthe various products being advertised. In another embodiment, atraditional video-based, TV-like advertisement is provided and inanother embodiment a traditional image-based, web-like advertisement isprovided. In one embodiment, game play is suspended during “viewing theadvertisement.” In other embodiments, game play continues while thecharacters view the advertisement—thus, while viewing the billboard orwalking through the virtual “advertainment” area, a player in ashoot-em-up style game may be in peril of getting shot. In oneembodiment, a motif of the add-on component 115B is programmed to matcha motif of the program being updated (e.g., in an old west style game,the billboard appears as a large ranch sign—an O.K. Corral style sign,or, in technology related games, the billboard appears in a futuristicmotif).

In one embodiment, a virtual billboard within a specific game playingprogram will advertise equipment, ammo, characters, etc that arecompatible with the game playing program. Thus, upon selection of thebillboard advertisement, the game character will enter a virtual store,and will be able to “purchase” his own game equipment, such as aparticular model of a gun (pistol, rifle, machine gun, etc.), andcharacter 210 may, for example, if the virtual store allows trading,trade up from a handgun to a more sophisticated weapon.

In another embodiment, a virtual billboard within a specific gameplaying program will advertise real world products such as clothing,sports gear, movie tickets, food products, etc. Upon selection of thebillboard advertisement, the game character will enter a virtual storein which he/she may purchase the advertised product or enter contactinformation to be sent additional information regarding the advertisedproduct.

Game advertisements are generally produced by the game publishers oradvertisers to which the game publisher has sold the ad locations andopportunities. The publishers or advertisers may require game players tomatch a preferred profile or to fulfill certain game requirements beforegame players may view specific advertisements or promotions. Forexample, a player must have accumulated a certain amount of points orplaying time before being allowed to view an advertisement for a moresophisticated weapon to be used within the game or a player must 21years or older to be allowed to view the advertisement that contains afree coupon for a six pack of beer. Such requirements are enforced viaencrypted keys or other secure methods to check a users qualificationbefore displaying of certain advertisements. Such checks may be made,for example, by the remote server 110, or the program 185, and thenecessary qualifications are, for example, stored in metadata in thedatabase and are retrievable by either the remote server or program.Other advertisements are available to all players willing to view them.Some advertised products are available for “purchase” using points, butothers require the use of real currency.

Advertisements displayed within the virtual billboard are viewedaccording to rules established by either the advertisers or gamepublishers. The rules are accessible and enforced by either the remoteserver or the program 185. Example rules include, for example, thatadvertisements may only be viewed during specified time intervals,according to fluctuating supply levels, or determined by a sequence ofactions taken by the game character in relationship to theadvertisement. For example, a beer ad may be specified to viewed in theevening, whereas a coffee ad is displayed in the morning and an addisplaying a coupon for a free movie ticket may be displayed only to thefirst 1000 game players who select the advertisement. In anotherexample, an advertisement containing a coupon for a free movie ticket isonly displayed if a game player directs his character to jump threetimes around the circumference of the billboard displaying the ad orthrows a tomato at the center of the billboard.

In one embodiment, an on-line connection between the add-on componentand the remote server provides up to date information on the displayschedule and stock availability of specified advertisements. The remoteserver 110 includes a manager program 120 that is configured to manageadvertisement display schedules and rules presented in the virtualbillboard. The manager program 120 includes all the necessaryprogramming to enforce game publisher rules about the display andselection of advertisements within the game (e.g., evaluation and/orproduction of keys needed to insure proper distribution of theadvertisements), and maintains all necessary hierarchies or otherorganization needed to present the advertisements available for viewingin an efficient manner. Messages, such as management message (M) aresent form the manager, over a network (e.g., Internet), to the usercomputer, through the API 190, to the add-on component 115B with thelatest information needed to properly implement the feature of theadd-on component (e.g., latest advertisements, product promotions,display schedules and criteria). Relevant information aboutadvertisement selection or purchases or other aspects related toactivities of the virtual billboard (or other feature) are sent back, asneeded, to the manager via response (R) messages. In another example,the add-on component is a can, and the can appears in the video game asa soda can if the registered player is under age, and as a beer can ifthe user is not under age. The age requirement being a rule, the canbeing an add-on component inserted into the game, and the can label(beer/soda, etc) being advertising content specified by advertisers tothe remote server and then controlled by the remote server, viamanagement messages, as to when it is allowed to appear as a beer, soda,or other product.

The manager 120 is also configured to coordinate purchases via creditcard, bank accounts, or other currency sources by sending billinginformation to any available 3rd party credit or bill paying service(e.g., VISA, PayPal, etc.). Moreover, the manager 120 is also configuredto coordinate responses back to the user computer add-on component tocoordinate interaction with a multimedia server that correctly samples,filters, resizes, and returns multimedia assets such as video, images,and audio files that represent the advertisements being displayed to theuser. For example, a soda can object may be resized from a game objecthandled by a user in the foreground or in the background (perspectiveresizing) of the video game play space or resized for use in abillboard.

Although only one add-on component is shown in FIG. 1, the program 185may be configured to accept multiple add-on components, and remoteserver 110 is preferably configured to serve many different types ofadd-on components. In addition, add-on component 115A/B is not limitedto implementing a single feature in the program 185, and may also beprogrammed to implement multiple features. A “Scavenger Hunt” area 230is also shown in the example game playing space of FIG. 2. Like the“Freeway Billboard”, the Scavenger Hunt area is available for selectionand in game characters may be directed to navigate around and throughthe area to collect, for example, coins, money, or treasure thatrepresent gift certificates, any one or more of which are add-oncomponents, that are again, for example, redeemable for real lifeproducts such as electronics, clothing, or movie tickets. The presentinvention does not place constraints on how the add-on component isimplemented in the game. In some embodiments though, the presentinvention evaluates metadata and requires certain rules be fulfilledbefore download of the add-on component to the user computer orenablement of one or more features of the add-on component (e.g.,download or enablement via a message M). The message M may contain anyof an add on component, instructions to enable features, requests of theuser computer, or other messages (e.g., data, status, etc.). Informationneeded from the user's computer to make decisions as to downloading ofcomponents or enablement of features is retrieved, for example, via amessage (R) sent from the user's computer to the remote computer (e.g.,automatically sent to the remote server on a schedule or as the resultof an event, or sent in response to an inquiry message (M) from theremote computer).

In some embodiments, the update area (e.g., Freeway Billboard area 220)is required to have a similar motif as the program, or at least berelated to the program (e.g., advertise characters or equipment, etc.that is usable with or at least related to the game). However, in otherembodiments, the updated area may not be related at all to the gamebeing played. For example, instead of selling game equipment, freewaybillboard area 220 might be an advertisement for an actual autodealership selling full sized automobiles. The Freeway Billboard then,for example, once selected links to an on-line store for Ford, Chevy, orFerrari automobiles. In one embodiment, special gaming style programmingis utilized to implement the car sales area. In another embodiment, thecar sales area is a link that brings up a traditional browser into thegame program that the user can view a car sales web site (thetraditional browser may have a skin or other motif similar to a motif ofthe game program; motif of the online stores or other areas/locationswithin the game play space may also be similarly updated using skinsdeveloped for add-on components).

In addition, in one embodiment of the invention, advertisement screensmay be displayed during idle load time that typically occurs when thegame is loading into memory. Load screens typically include applicationcode and graphics representing a game play space that may represent, forexample, a scene such as that depicted in FIG. 2. The same space andresources are converted to advertising. An example advertisement screen1400 is illustrated in FIG. 14. The advertising to be presented isprovided from an add-on component, or a message to an existing componentin the user's game program. In another embodiment, advertisements may beshown when a game player pauses game play by selecting a pause optionprovided by the game (e.g., see pause screen 1500, FIG. 15). Whenviewing advertisements presented in a load or pause screen, the gameplayer may interact with the advertisement directly and may choose toresume the game after the game space or sequence has completed loadingor upon selecting to unpause the game.

Although additional aspects and features of the invention are discussedherein below, in several broad embodiments, the present inventionincludes: an add-on component served from a remote server that isinstalled (or imported) into a program of a user computer; an add-oncomponent that implements one or more new features to a program; aremote server that manages a part of a program remotely (e.g., notifyinga virtual billboard in a program about advertisement availability and/orinstructing the billboard to display a specific advertisement), in whichthe part may be either an add-on component or a permanent part of theprogram. Management by the remote server may also be configured toinsure integrity of the display and use of the add-on components via theuse of keys and other privacy facilities that make those components, oraspects of the components, inoperable unless certain conditions are met.For example, in one embodiment advertisers that upload content to theremote server are also required to enter a key (e.g., an encrypted key)that indicates to the remote server a length of time that the content isvalid and a frequency of use of the content. Keys may be provided toextend the life of the content or change the frequency of use (e.g.,license is fully paid).

Thus, in one embodiment, the invention is a game, comprising, a gameplaying program wherein at least one part of the game playing program isconfigured to be populated with an add-on component, and the add-oncomponent is populated from a remote source. The add-on component may bean advertisement, a object used in the game, or a display area in whichto show advertisements.

In one embodiment, the game playing program includes a character thatrepresents a player utilizing the game playing program, the add-oncomponent comprises a gaming style program that implements anadvertisement billboard paradigm, the game playing program is configuredto allow the player to direct the player's representative character toselect the advertisement billboard, and the add-on component isconfigured to allow the character to select and purchase itemsadvertised within the billboard. In another embodiment, the add-oncomponent comprises a gaming style program that implements scavengerhunt collection paradigm, in which the game playing program isconfigured to allow the player to direct the player's representativecharacter to treasures such as coins, money, jewels, power-ups, etc,that represent certificates that may be redeemed for advertised productsor services. However, it should be understood that any number of gamingparadigms may be implemented using the processes and techniques of thepresent invention and those examples provided herein do not limit thetype or scope of possible implementations. In fact, the presentinvention is not limited to gaming programs and may be applied to anytype of computer product.

The present invention is also a system, comprising, for example, a gameplaying program wherein at least one part of the game playing program(e.g., 185) is configured to be populated with an add-on component, aremote server (e.g., 110) configured to store and serve at least oneadd-on component (e.g., 115A) compatible with the game playing program,and an interface (e.g., 190) coupled to the game playing program, theinterface being configured to interact with the remote server andfacilitate importation of an add-on component from the remote serverinto said at least one part of the game playing program. The importationof the add-on component (e.g., 115B) may be a dynamic update (e.g.,during game play) of contents of at least one of an area and location(e.g., 220) within the game playing program. The add-on component maybe, for example, an advertisement (e.g., any of an ad sponsorship,product placement, gift certificate, video, text, graphic, game object,or other component) utilized by the game playing program. In anotherexample, the add-on component may define a virtual billboard (e.g.,Freeway Billboard 220) configured to at least one of display,distribute, advertise, or promote products and services and link to anonline auction or store that is accessible as part of the game playingprogram and at which game players may purchase the advertised productsor services.

In one embodiment, the remote server is further configured to registerusers of the system, transmit binary application code of the add-oncomponent, and generate and transmit a license key that controls use ofthe add-on component. For example, in one embodiment, the license key isproduced by a license key program co-located in the remote-server. Thelicense key is provided based on content and payments ($ or otherremuneration) provided by an advertiser and/or game publisher. Thelicense key is transmitted in a message M to the user computer (e.g., toprogram 115B via API 190) where it enables previously transmitted add-oncomponents and/or content.

The server includes facilities to manage an area within a program hostedon a user computer, wherein the server is remotely located from the usercomputer. In one embodiment, the server is further configured to defineadvertisement campaigns such that any of the virtual billboards within agame may be dynamically updated within the program according tospecified display rules (The display rules may, for example betransmitted in a message M to the program 115B for implementation. Inother embodiments, the display rules are implemented by the remoteserver via commands sent in messages (m) to the program 115B).

The server may also be further configured to facilitate fulfillment ofpurchase transactions incurred by a game player in a virtual store thatis linked to from a managed area, and bill the game player's purchasesvia interaction with a third party billing system to charge the gameplayer and credit a selling party, and, for example, persist a billingrecord of fulfilled purchase transactions by saving relevant purchaseinformation into a centralized storage device (e.g., to database 130).

The server may also be configured to facilitate the dynamic resizing,sampling, or editing or a multimedia image, audio, video, or text filethat represents the add on component to be displayed within the managedarea through interaction with a third party multimedia server. Thisencompasses all types of matching needed to place content provided byadvertisers in spaces within the game playing program and/or a componentinstalled in the game playing program. The spaces are, for example,software modules, objects, or specifically defined areas programmed intothe game playing program and configured to accept the content and usethe content in the play space or virtual world of the game playingenvironment. FIG. 17 is a screen shot of an example play space orvirtual world 1700. An advertising billboard 1710 is a space providedfor advertising (e.g., advertising content 1720).

The server may also be configured to identify areas within the programthat are capable of being dynamically updated from a remote source(e.g., advertising billboard 1710, game object 212, etc.) and thendynamically update the content of at least one of the identified areas.The identified areas comprise, for example, at least one of a twodimensional and three dimensional space, or an object within an outputof the game program.

On-line advertising includes a method, comprising the steps of,uploading an add-on component to a game program of the registered user,wherein the game program is configured to accept and install the add-oncomponent, and managing activities of the user during interactions ofthe user with the uploaded add-on component. Preferably, the users arerequired to login to the system as shown in FIG. 18 and are registeredwith the system which includes, for example, ID information, and creditcard or other information used to bill the user for services and/orproducts offered by any one or more features provided by the presentinvention. The game user's account is created and/or updated using, forexample, a registration window such as that shown in FIGS. 19 and 20.Managing activities includes, for example, managing advertisements andtheir respective multimedia assets (content), managing various locationswithin a game in which advertisements may display, and managing ahierarchical organization and grouping of related advertisements withinan ad campaign. A campaign in one embodiment is a grouping of relatedadvertisements that are scheduled or configured to display in a commonlocation during a common time period according to a set of definedguidelines as set forth in the succeeding paragraphs. The presentinvention provides a unique method for grouping advertisements intocampaigns such as, in one embodiment, is shown in FIG. 12.

Managing also includes the steps of defining a set of guidelines (orrules) governing a advertisements display, distribution, or behaviorwithin a advertisement location (e.g., billboard space), and enforcingthe guidelines through management activities that, for example, includeuse of any metadata, binary files, and/or license keys of the add-oncomponent according to the set of guidelines governing the uploadedcomponent (e.g., as provided by game publishers).

The invention also includes a method of producing add-on components forgames, comprising, preparing an executable program component capable ofbeing imported into a game program and configured to interact with agame being played by a user of the game program. The executable programcomponent may be programmed or otherwise configured to implement avirtual billboard or scavenger hunt area in which game players mayparticipate. Participating may include, for example, selecting orcollecting items being advertised, and request more informationregarding the advertised items, purchase the advertised items, or redeemthe collected advertised items for gift certificates, products, orservices.

An API (e.g., 190) is utilized that allows the program (e.g., a game) todynamically update the contents of an area/location within the programfrom a remote source. This is particularly applicable to “advertising”intended to take place, for example, in a game, such that the“area/location” being updated is a virtual “billboard” and the“contents” are real world products such as clothing, food, services, etcthat are for sale. “Freeway Billboard” 200, discussed previously, is oneexample. The contents of the billboard 200 may change on a predeterminedschedule (e.g., every 30 seconds), or based upon gaming actions (e.g.,billboard changes after a certain weapon is fired). Another example issuch that the “area/location” being updated is a pause screen and the“content” being advertised are movie tickets. For example, when a gameplayer discovers the secret entrance of a hidden castle, the phone ringsand he pauses the game to take the call. When the game player comes backto the game, a movie trailer advertising (e.g., displayed ininterstitial advertisement area 1510) that the third installment of TheLord of The Rings is opening this Friday. After clicking on a link(which, for example, may also be the interstitial advertisement area1510), to view local show times and purchase tickets online, the gameplayer unpauses his game (resume game button 1530) to continue his questto save the world.

Another example is such that the updated “area/location” within the gameis a “pit stop” within a racing car game and the “content” being updatedis a game object representing engine oil. When stopping for a pit stop,the game player may choose the brand of engine oil that he prefers touse in real life and within the game. Selecting a specific brand ofengine oil also allows the game player to click on a special pop-up tobe sent a coupon for $1 off the advertised brand of engine oil (e.g.,via the user's registered e-mail address). Alternatively, a pop-upallows the user to enter his e-mail address to receive the coupon orother announcement.

Yet another of example is that the updated “area/location” within thegame is a “secret bonus level” and the updated “content” is coupons foradvertised products. In this example, a game player is playing a cartooncharacter driven game with secret bonus rounds where game players mustnavigate the main character through a maze to collect product couponsand gift certificates of differing values and denominations. In order tocollect the coupons, for example, the game player must jump on or hitbarrels and blocks that are marked with highlighted arrows. The couponsin this scenario are advertisements for real products and are hiddenwithin specified locations and objects within the bonus roundenvironment. The coupons and gift certificates are preferably contentdownloaded to the gaming user's computer and managed by the remotecomputer. Alternatively, the content is managed by programming on theuser's computer according to the rules provided to the user's computerby the remote computer. After completion of the bonus round, the gameplayer may be presented with the option of viewing the specificdiscounts and gift certificates for real world products that he/she hascollected during the bonus round.

The “area/location” may also be a feature that is a non-advertisingscenario as well. For example, an “area/location” may also be defined inthe game as a treasure chest and the “contents” of the treasure chestmay be coins, jewels, weapons, potions, etc. In one embodiment, thecontents are dynamically determined by making a request (or response toa remote server management message) to a remote server that manages andmaintains the catalog of items. For example, when a player nears a roomwhere a treasure chest is to be located, programming on the user'scomputer makes a request to the remote computer that requests a treasurechest and/or contents of the treasure chest. Similar requests may beused to request advertising content for any of the other embodimentsdiscusses herein.

Furthermore the “remote server,” on a Transplay Platform (e.g., 105),may execute code at the time of the request to determine what specificitem should display within the treasure chest depending upon “gamerules.” The “game rules” are set up as an administrative process by thegame developer or publisher through, for example, a web based managementconsole. Examples of such rules are show jewels if the main characteropening the chest is a woman, show life potion if the main character'shealth is less than 50%, or randomly etc. Another example of thisbehavior is defining a building as a location within a game (e.g., anammo shop, museum, gas station, fast food, etc.), different bad guysthat run out of the building shooting at the main character as thecontent, and game rules such as run out only if the main character hasrescued the President and is at risk of escaping. Any game rules for anyparticular game or group of games may be utilized.

We now provide a more detailed look at the various features of thepresent invention. In one embodiment, the present invention describes anonline game advertising system that provides game developers andpublishers with the ability to define, sell, distribute, and manageadvertisements, sponsorships, and placements that appear within the gameas part of the game experience or during idle load, wait, and pausescreens. The present invention allows game developers to definelocations within their games in which advertisements may appear. Throughthe use of a Web based management console, game publishers andadvertisers may create and schedule new image, audio, text, or videobased advertisements to display within available game locations asdefined by the game developer.

Define advertisement locations and objects: In one embodiment, thepresent invention provides a method for defining advertisement locationsand objects. In this context, the term “defining” refers to a uniquemethod of specifying the areas or objects within a game in whichadvertisements may display (e.g., game publishers provide information tothe remote server that specifies the areas and objects for a game or setof games that the remote server will interact with).

Moreover, the term “defining” also refers to the unique method ofrestricting the types of advertisements that may display within a givenarea or object within a game (e.g., game publishers specify content andformat of content that is useable and/or appropriate for the specifiedareas and objects). Examples of such restrictions include but are notlimited to the multimedia type (image, video, or audio), dimensions,file size, and duration of an advertisement. “Areas” in this contextrefers to any region mapped to any two or three-dimensional coordinatesystem bounded by the spatial dimensions of the described space.Moreover, “objects” in this context refers to the representation of anygame component such as but not limited to a game character, weapon,device, equipment, landmark, or scenery that may contain areas in whichadvertisements may appear. This is achieved through the use of GameService and Game Location APIs (Application Programming Interface) suchas those depicted in FIG. 6, Items 105 and 150 and which provide aprogramming interface to define advertisement locations and objectswithin the code of a game written for any proprietary gaming console orclient such as, but not limited to, Sony Playstation 2, Microsoft Xbox,Nintendo GameCube, any wireless or handheld game client, or a personalcomputer. Preferably, the APIs are standardized across different gamingenvironments, but several different location APIs at the remote computercould be utilized to accommodate different environments.

Register advertisement locations and objects: In one embodiment, thepresent invention provides a method for registering advertisementlocations and objects with a game advertising server. The term“registering” in this context means the process of specifying theadvertisement locations and objects that have been defined within a gameby a game developer using the method described above. In one embodiment,this may be achieved manually through the use of user interface providedby a web based management console application (e.g., the processillustrated in FIG. 3, steps 1-4 performed by Advertising Manager 100(FIG. 6) and/or, for example, using the screens illustrated in FIG. 9).In another embodiment, registration may be achieved automaticallythrough an asynchronous import of an XML document containing a listingof all of the advertisement locations and objects within a game that areto be registered with the game advertising server.

Define campaign and display rules and register advertisement assets: Inone embodiment, the present invention provides a method for definingcampaign and display rules and registering advertisement assets withinan online game advertising server through the use of a user interfaceprovided by a web based management console application such as themethod depicted in FIG. 4, which may be implemented, for example, on aserver (e.g., see FIG. 6, Item 100). For example, as shown in FIG. 4,one may use a web based management console to image, video, ormultimedia assets to a remote server (e.g. FIG. 6, Item 100) and entervarious information describing such assets in association with one ormore advertisements or ad campaigns. Moreover, the remote server wouldthen transfer the multimedia media assets to a Multimedia Server (e.g.FIG. 6, Item 140) and store the descriptive metadata into a relationaldatabase (e.g. FIG. 6, Item 130). The term “campaign” refers to acollection of advertisements. The term “advertising asset” refers to amultimedia object such as an image, audio, or video file that representsthe content of the advertisement to be displayed. The term “register” inthis context refers to the unique method of specifying a set of metadataassociated with an advertising asset that may include properties such asbut not limited to the asset's name, description, media type, file size,dimensions, and URL or path to locate the asset. The term “displayrules” refers to a set of guidelines governing at what time and at whatlocations within a game a campaign should be displayed and in whatsequence the advertisements within a campaign should be displayed.Moreover, “display rules” may in one embodiment represent a set ofcriteria to determine what advertisements to display at specificlocations based upon game environment variables such as but not limitedto any of player location, player skill level, points that a game playerhas achieved through prior or current game play, the number of times thegame player has viewed the advertisement, the specific theme or genre ofthe level of the game at which the ad is to display, the presence orexistence of specific game objects, characters, weapons, equipment, oritems, and a game player's, character's, or object's previous actions inrelationship to the ad location or to other game players, characters,and/or objects within the proximity of the ad location.

For example, an advertising campaign may be uploaded by an advertiser tothe remote server. The remote server then applies the advertisingcampaign to a driving game operating on a user's computer via API 190.In this example, the advertising campaign is for a new automobile. Theadvertising campaign contains several related advertising assetsincluding, a skin for the new automobile, billboard advertisingmaterial, and a virtual store. The advertising campaign also includesthe display rules for each of the assets. For example, a rule that thebillboard advertising occurs first, then, the skin is applied to anopponent in the driving game, the opponent must have obtained a minimumskill level prior to having the skin applied, and, at the end of thedriving game, after having viewed the skilled opponents performancedriving automobile with the advertising skin, the virtual store providesthe game user the opportunity to shop for the new automobile. In thisexample, the display rules include both timing data (at what time do theassets appear), and needed requirements before utilizing an asset (e.g.,skill requirements before applying the skin, must be an opponents car).In this example, the advertising assets include data applied to existingparts of the game (billboard data applied to a billboard, an auto skinapplied to an automobile game component), and an entire component to beadded (virtual store). In the case of data applied to existing parts ofthe game, the remote server saves the advertising assets and sends themto various games hosted on user computers (e.g., via messages M to API190). In the case of the virtual store, the virtual store is an add oncomponent downloaded to the user's computer and then the virtual storeis managed by the remote computer. The above provides an example of anadvertising campaign, the specifics of any one campaign may varysignificantly. Regardless of those specifics, the present inventionprovides a mechanism in which the add on components, advertising assets,data, rules, etc, may be registered, stored, and applied to games andother programs via the remote server.

Specify and transfer advertisement assets: In one embodiment, thepresent invention provides a method for specifying and transferringadvertisement assets that have been registered with an online gameadvertising server (e.g., see FIG. 6, Item 120) as described in abovewith a multimedia server (FIG. 6, Item 140) such as an image, audio, orvideo server through the use of a user interface provided by a web basedmanagement console application (FIG. 4 and FIG. 6, Item 100). The terms“specifying’ and “transferring” in this context means a method ofidentifying the advertisement asset located within one system andcopying or moving (e.g., uploading the advertisement asset onto thesystem of a multimedia server).

Persist advertising metadata: In one embodiment, the present inventionprovides a method for persisting advertising metadata into a centralizedstorage device such as a relational database catalog or networked filesystem (e.g., see FIG. 6, Item 130). In this context, the term“metadata” refers to any describing property or feature of anadvertisement, campaign, location, or display rule and any relationshipsbetween said objects. Examples of such relationships include but are notlimited to: what advertisements belong to what campaigns, what campaignsare displayed at which locations during what times, at what sequence dothe advertisements within a campaign display, and according to what gameenvironment variables do advertisements display themselves.

FIG. 21 illustrates an example relational database schema 2100 in whichmetadata may be stored. in the example schema 2100, fields aremaintained for linking a location 2110, a campaign 2130 for theadvertisement, display rules 2150, and specific information for theadvertisement 2170 (e.g., size, text, etc.)

Request advertising metadata and schedules: In one embodiment, thepresent invention provides a unique method for online games to requestadvertising metadata and schedules that determine what advertisementsare to display in specified locations within the game during specifiedtimes and according to specific display rules previously determined byan administrative user. For example, programming running on the usercomputer (e.g., ad on component, game client, etc.) requests advertisingfrom the remote server (e.g., at game start-up, or other strategic timesduring game operation). When requesting advertising metadata andschedules, game clients must pass the server information such as but notlimited to the location identifiers that uniquely identify an ad withina game and any game specific environment variables such as object andcharacter positioning and actions and game player profiles and skill setand experience level. This is achieved, for example, through the use ofa Game Service and Scheduling APIs (Application Programming Interface)as depicted in FIG. 6, Items 150 and 110 that provide a standardprogramming interface (e.g., standardized interface) to request theadvertising metadata identifying advertising campaigns and theirrespective display rules that are to display within a specified locationduring a specified time from any proprietary gaming console or clientsuch as, but not limited to, Sony Playstation 2, Microsoft Xbox,Nintendo GameCube, any wireless or handheld game client, or a personalcomputer.

Receive and post messages and advertising assets: In one embodiment, thepresent invention provides a unique method for receiving and postingmessages and advertising assets. After an online game running on a gameconsole or user computer (client) requests advertising metadata anddetermines an ad campaign's display rules, schedule, and locations, itrequests the advertising assets that represent the advertisement. Thecontent of the messages passed between the client and game server may bein one embodiment an XML message containing ad campaign listingmetadata. For example, FIG. 7 illustrates an XML format structure thatmay be utilized to send metadata and which corresponds to the examplestructure 800 for the metadata as shown in FIG. 8. Specifically, item500 in FIG. 7 and item 600 in FIG. 8 represent a root level parentobject CampaignListing that contains one or more Campaign objects, item510 and 610. Each Campaign object has an id attribute that uniquelyidentifies the Campaign within the system and contains the datastructure elements AdListing (520, 620) and Location (530, 630). AnAdListing data structure contains Ad elements (525, 625) which in turncontain attributes and elements such as id, name, description, width,height, asset URL, etc. that describe an advertisement within thespecified ad campaign. A Location object (530, 630) represents thelocation within a game at which advertisements are to appear andcontains attributes and elements such as ID, name, and description.

When requesting advertising assets, the game client may, for example,pass the advertising server information describing the specific run timeparameters that the ad should take. Such parameters include but are notlimited to ad dimensions, duration of video or animation, color scheme,transparency, file format, and file size. This is achieved through GameService and Messaging APIs such as those depicted in FIG. 6, Items 115and 150 and that in one embodiment provide a transactional, synchronousmodel of downloading advertising assets on a demand basis. In anotherembodiment the present invention provides an asynchronous method ofdelivering advertising assets on a scheduled broadcast deliverymechanism in which the advertising server uploads advertising assets toeach subscribing game console or client. When a successful transactionhas been fulfilled both selling and buying parties are notified via amessage sent by invoking a standard Messaging API interface provided bythe game commerce server.

Request advertising asset: In one embodiment, the present inventionprovides a method for requesting an advertising asset from a multimediaserver. In this context “advertising asset” is defined as a multimediafile such as an image, video, or audio file that represents one or manyparts or the whole of an advertisement to be displayed within an onlinegame. A “multimedia server” such as that depicted in FIG. 6, Item 140 isany server that is responsible for the dynamic retrieval, resizing,sampling, composting, or generation of such files. The requesting ofsuch assets may be achieved through the use of a Multimedia API (FIG. 6,Item 125) that contains interfaces to make calls to a multimedia serverto allow for the dynamic retrieval, resizing, sampling, composting, orgeneration of images, video, or audio files.

Receive advertising asset: In one embodiment, the present inventionprovides a method for receiving an advertising asset from a multimediaserver. In this context “advertising asset” is defined as a multimediafile such as an image, video, or audio file that represents one or manyparts or the whole of an advertisement to be displayed within an onlinegame. A “multimedia server” is any server that is responsible for thedynamic retrieval, resizing, sampling, composting, or generation of suchfiles. The receipt of such assets may be achieved through the use of aMultimedia API (FIG. 6, Item 125) that contains interfaces to make callsto a multimedia server to allow for the dynamic retrieval, resizing,sampling, composting, or generation of images, video, or audio files.

Persist advertising impressions, click-throughs, and game actions: Inone embodiment, the present invention provides a unique method forpersisting advertising impressions, click-throughs, and game actionstaken on an ad into a centralized storage device such as a relationaldatabase or networked file system. “Advertising impressions” in thiscontext are defined as the number of times that game players viewed aparticular advertisement within an online game and “click-throughs” isdefined as the number of times that a game player “clicked” on theadvertisement to display more detailed information related to the coretopic of the advertisement. The advertising impressions are, forexample, tabulated by the user computer and forwarded to the remotecomputer. The remote computer may also tabulates statistics on thenumber of accesses for each ad and/or ad type. “Game actions taken on anad” is defined in one embodiment as any action performed directly orindirectly by a game player, character, or object on an advertisementthat is represented as a game object within the game. Examples of suchactions include but are not limited to hitting, throwing, shooting,jumping on, eating, kicking, speaking, shouting at, and running into anad object. Information such as, but not limited to, the user name of thegame player viewing or clicking the ad, the current time and date,demographic information about the viewer, the length of time that the adwas viewed or interacted with, and the types of actions taken on an adobject is saved as part of the transaction. The act of persistingadvertising impressions, click-throughs, and game actions in oneembodiment is performed by an Advertising Server such as that depictedin FIG. 6, Item 120 using a relational storage database such depicted inFIG. 6, Item 145. The impressions data is stored in the database.

View advertising reports and statistics: In one embodiment, the presentinvention provides a unique method for viewing advertising reports andstatistics about advertising impressions, click-throughs, and gameactions taken on an ad. Through the use of a user interface such as aweb based application (FIG. 6, Item 100), game publishers or systemadministrators may review reports that illustrate details such as butnot limited to ad viewership by time period, impressions,click-throughs, and ad actions by demographic group or region, andimpression to click-through success rates and ratios. Data to generatethe reports is stored in one embodiment in a relational database such asthat depicted in FIG. 6, Item 145.

The present invention may be conveniently implemented using aconventional general purpose or a specialized digital computer ormicroprocessor programmed according to the teachings of the presentdisclosure, as will be apparent to those skilled in the computer art.

Appropriate software coding can readily be prepared by skilledprogrammers based on the teachings of the present disclosure, as will beapparent to those skilled in the software art. The invention may also beimplemented by the preparation of application specific integratedcircuits or by interconnecting an appropriate network of conventionalcomponent circuits, as will be readily apparent to those skilled in theart based on the present disclosure.

The present invention includes a computer program product which is astorage medium (media) having instructions stored thereon/in which canbe used to control, or cause, a computer to perform any of the processesof the present invention. The storage medium can include, but is notlimited to, any type of disk including floppy disks, mini disks (MD's),optical discs, DVD, CD-ROMS, micro-drive, and magneto-optical disks,ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices(including flash cards), magnetic or optical cards, nanosystems(including molecular memory ICs), RAID devices, remote datastorage/archive/warehousing, or any type of media or device suitable forstoring instructions and/or data.

Stored on any one of the computer readable medium (media), the presentinvention includes software for controlling both the hardware of thegeneral purpose/specialized computer or microprocessor, and for enablingthe computer or microprocessor to interact with a human user or othermechanism utilizing the results of the present invention. Such softwaremay include, but is not limited to, device drivers, operating systems,and user applications. Data used by the software may be retrieved fromdifferent sources (local or remote) and either permanently ortemporarily stored (before, during, or after any processing) byutilizing any of text files, delimited files, database(s), or otherstorage techniques. Ultimately, such computer readable media furtherincludes software for performing the present invention, as describedabove.

Included in the programming (software) of the general/specializedcomputer or microprocessor are software modules for implementing theteachings of the present invention, including, but not limited to,finding updateable areas of a program, transferring components from aremote server to a program, managing areas/locations with a remoteprogram, including organizing displays and facilitating purchase ofadvertised items displayed, installing add-on components into a program,and the display, storage, or communication of results according to theprocesses of the present invention.

The present invention includes substantial discussion regarding gameobjects which includes game objects which are programming modules thatmay be resident in gaming software or imported into gaming software.Game objects may also refer to virtual objects that are used as part ofthe game. The underlying programming of a virtual object may be referredto as a game object.

In describing the present invention, billboards, coupons, treasure, andother items are used to describe various game parts and/oradvertisements. These are examples and the present invention isapplicable to any type of advertising presentable in a gaming or on-lineformat and include any type of value or known physical object.

Obviously, numerous modifications and variations of the presentinvention are possible in light of the above teachings. It is thereforeto be understood that within the scope of the appended claims, theinvention may be practiced otherwise than as specifically describedherein.

1-53. (canceled)
 54. A method for managing player interaction withadd-on components presented in association with at least one gamingprogram executing at least one player device, the method comprising:retrieving at least one presentation rule associated with the add-oncomponents, wherein at least one of the add-on components is associatedwith advertising, and wherein the at least one presentation rulerepresents one or more criteria used to determine how, where, and/orwhen the add-on components will be presented in association with the atleast one gaming program; and applying the retrieved at least onepresentation rule to manage player interaction with the add-oncomponents.
 55. The method of claim 54 wherein the at least onepresentation rule is stored as metadata in a database.
 56. The method ofclaim 54 wherein the retrieving is performed, at least in part, by theat least one gaming program.
 57. The method of claim 54 wherein theretrieving is performed at least in part, at an add-on managementcomponent that is remote from the at least one gaming program.
 58. Themethod of claim 54 wherein the applying is performed, at least in part,by the at least one gaming program.
 59. The method of claim 54 whereinthe applying is performed at least in part, at an add-on managementcomponent that is remote from the at least one gaming program.
 60. Themethod of claim 54 wherein the at least one presentation rule isestablished by at least one advertiser that uses the add-on componentsto display advertisements in association with the at least one gamingprogram.
 61. The method of claim 54 wherein the at least onepresentation rule is established by at least one game publisher thatpublishes the at least one gaming program.
 62. The method of claim 54wherein the at least one presentation rule is based on one or more gameenvironment variables selected from the group consisting of: playergeographic location, player skill level, points that a game player hasachieved through prior or current game play, the number of times a gameplayer has viewed an advertisement, a specific theme or genre of acurrent level of a game, and a presence or existence of one or morespecified game objects, game characters, game weapons, game equipment,and/or game items.
 63. The method of claim 54 wherein the at least onepresentation rule is based on one or more game environment variablesrelating to previous game actions of a game player, a game character,and/or a game object.
 64. The method of claim 54 wherein the at leastone presentation rule includes a rule based on a combination of timingrequirements and player characteristic requirements.
 65. The method ofclaim 54 wherein the at least one presentation rule includes a rulebased on an actual game player profile matching requirements of apreferred game player profile.
 66. The method of claim 54 wherein the atleast one presentation rule includes a rule based on a game playermeeting specified game performance or skill requirements.
 67. The methodof claim 54 further comprising: providing a presentation rule definitioninterface, wherein the presentation rule definition interface allows agame publisher, a game advertiser, or another entity to define the atleast one presentation rule.
 68. The method of claim 54 wherein the atleast one presentation rule governs a location in a game that one ormore add-on components associated with a specified campaign arepresented, a time frame associated with the presentation of the one ormore add-on components associated with the campaign, and a sequence thatadvertisements associated with the campaign are to be presented inassociation with the one or more add-on components.
 69. The method ofclaim 54 wherein the at least one presentation rule includes a rule thata player must have accumulated a specified number of points before beingpresented with an add-on component comprising a specified advertisement.70. The method of claim 54 wherein the at least one presentation rulesincludes a rule that a player must be a certain age before beingpresented with an add-on component comprising a specified advertisement.71. The method of claim 54 wherein the at least one presentation ruleincludes a rule that an add-on component can only be presented duringspecified time intervals.
 72. The method of claim 54 wherein the atleast one presentation rule includes a rule than an add-on component canonly be presented upon the occurrence of a specified sequence of actionsoccurring during game play.
 73. The method of claim 54 wherein the atleast one presentation rule includes a rule that controls displaycontents of an add-on component based on a characteristic of the gameplayer, wherein a first version of display content is displayed when thegame player possesses the characteristic, and wherein a second versionof display content is displayed when the game player does not possessthe characteristic.
 74. The method of claim 54 wherein the at least onepresentation rule includes a rule that controls display contents of abeverage can add-on component based on an over-twenty-one agecharacteristic of the game player, wherein alcoholic beverage-relateddisplay content is displayed in a case that the game player satisfiesthe over-twenty-one age characteristic, and wherein non-alcoholicbeverage-related display content is displayed in a case that the gameplayer does not satisfy the over-twenty-one age characteristic.
 75. Asystem for managing player interaction with interchangeable contentcomponents presented in association with at least one gaming programexecuting at least one player device, the system comprising: means forretrieving at least one presentation rule associated with theinterchangeable content components, wherein at least one of theinterchangeable content components is associated with advertising, andwherein the at least one presentation rule represents one or morecriteria used to determine how, where, and/or when the interchangeablecontent components will be presented in association with the at leastone gaming program; and means for applying the retrieved at least onepresentation rule to manage player interaction with the interchangeablecontent components.
 76. A computer-readable medium containing a datastructure, the data structure comprising: information defining aninterchangeable content component for a game, wherein theinterchangeable content component allows for advertising within thegame, and wherein the information includes: executable or interpretableprogramming code defining the interchangeable content component so itcan be presented in the game during game play; and wherein the add-oncomponent is configured to be presented in the game as an update to anexisting game object or display in accordance with one or morepresentation rules that allow for a selection of the interchangeablecontent component for presentation based on to demographic informationabout a game player or conditions occurring while a game is played.